Processors are commonly complex systems that include processing logic as well as circuits intended to interface with one or more devices or other integrated circuits that are external to the processor. Modern processors include multiple design blocks, (e.g., reusable IP design blocks), that perform various functions within the processor, such as digital signal processors, sensor controllers, graphics processors, media processors, audio processors, etc. Each design block maintains context information that is used during the operation of the component, or by software instructions that are executed by the component. The context is collection of registers that store state information that is used during the operation of the design block. Saving and restoring context data allows a computing component's task to be interrupted during operation and resumed at a later point.
However, to allow the processor to resume operation after a deep sleep state in which context information is lost, the context data is first saved to memory that remains powered during the low power state. The repeated saving and restoring context data introduces additional latency system operations as the system transitions through various operational or sleep states. In many designs, the context is saved/restored up to thousands times a second. Some systems use retention capable storage elements that maintain the active context during sleep states, however, such storage elements may be unavailable in certain technologies, or prohibitively expensive in terms of area and power consumption.
An overview of embodiments is provided below, followed by a more detailed description with reference to the figures.